home *** CD-ROM | disk | FTP | other *** search
/ Danny Amor's Online Library / Danny Amor's Online Library - Volume 1.iso / html / rfc / rfcxxx / rfc685 < prev    next >
Text File  |  1995-07-25  |  7KB  |  171 lines

  1. Network Working Group                                Michael Beeler (BBN-TENEX)
  2. Request for Comments: 685                                        April 16, 1975
  3. NIC #32298
  4.  
  5.  
  6.             Response Time in Cross-network Debugging
  7.  
  8.  
  9.  
  10. Cross-network debugging is a means whereby a programmer at one
  11. computer on a network can debug a program which executes on another
  12. computer. One form of cross-net debugging has been in use for some
  13. years by programmers who maintain IMPs on the ARPA network. Another
  14. form has been used by ARPA network users who employ TELNET or RSEXEC
  15. to log into a distant computer and remotely run a debugger on that
  16. machine. In both of these cases, the debugger is almost entirely
  17. resident in the same machine as the subject program, and only a
  18. remote means of access to that computer distinguishes the activity
  19. from single-computer debugging.
  20.  
  21. In our case, we use a PDP-10 to perform complex debugging
  22. manipulations. Simple manipulations, and complex actions which the
  23. PDP-10 has partially digested into simple actions, are sent over the
  24. ARPA network to a PDP-11. The portion of the debugger resident in
  25. the PDP-11, where the subject program executes, can perform only
  26. simple actions (examine, deposit, start, stop, set breakpoint,
  27. etc.). This division of debugging computation between the two
  28. machines is implemented and in use at BBN. A user s manual is
  29. available (as (BBN]<DOCUMENTATION>XNET.DOC) describing the
  30. debugger s features and discussing some of the issues involved.
  31.  
  32. The purpose of this RFC is to describe our experience with
  33. response times the debugger exhibits. Response time is a serious
  34. problem in any elaboration to a debugger. Here we wish to discuss
  35. the contribution of communicating over the ARPA network to response
  36. time. The debugger (X-NET) keeps statistics during each debugging
  37. session, and a debugger command prints them out. We used a
  38. "standard scenario" to measure response times on two occasions. The
  39. first was debugging a PDP-11 at BBN on the same IMP as the PDP-10.
  40. The second was with a PDP-11 at SRI-ARC in California, with at least
  41. nine IMPs intervening.
  42.  
  43. BBN (local) SRI (distant)
  44. TENEX LOAD AVG
  45. START 6.0 4.65
  46. FINISH 3.9 6.6
  47. TIME OF DAY 15:30 EST 11:00 EST
  48. DAY 4/10/75
  49. 4/11/75
  50.  
  51.                                                                        Page 2
  52.  
  53.  
  54. Each session lasted about 10 minutes. The terms used below
  55. are:
  56.  
  57. message -- a single message generated by the PDP-10 portion of X-NET
  58.  
  59. active command -- a command which involves, actually or virtually,
  60. an interaction with the subject program (e.g., examine, deposit,
  61. start, stop, set breakpoint, etc.)
  62.  
  63. bytes -- the total of all (8-bit) bytes, both sent and received,
  64. plus any bytes due to receipt of asynchronous replies (e.g.,
  65. breakpoint hit), during processing of the associated message or
  66. active command.
  67.  
  68. wait -- total elapsed time from handing message to implementation
  69. language (BCPL) network routines, to receipt of the reply from
  70. these routines and through an inferior process in X-NET
  71.  
  72. The 35 active commands in the scenario are:
  73.  
  74. 1 load program
  75. 8 start or proceed program
  76. 3 halt program
  77. 16 examine contents of memory word
  78. 1 deposit new contents in memory word
  79. 1 set breakpoint
  80. 1 remove breakpoint
  81. 1 word search
  82. 1 copy program onto disk file
  83. 2 network/process management (see user's manual)
  84.  
  85. The summary statistics are:.
  86.  
  87. BBN (local) SRI (distant)
  88. AVG STD DEV AVG STD DEV
  89. PER MESSAGE:
  90. BYTES 154 295 164 295
  91. WAIT 1.75 2.04 1.89 0.78 SEC
  92. PER ACTIVE COMMAND:
  93. MSGS 0.91 0.69 0.91 0.69
  94. BYTES 150 331 150 331
  95. WAIT 1.60 2.36 1.73 1.35 SEC
  96.  
  97. The standard deviation is relatively large partly because of a
  98. small number of samples, but even more because the message size and
  99. the command complexity are bimodal, as shown by the histograms
  100. below. The load and word search commands transferred many bytes, as
  101. did an examine (the first one while the program was halted;
  102. subsequent examines were answerable from the cache; see user s
  103. manual). Other commands needed little or no network transaction.
  104. Those which needed none at all produced a no-delay mode in the
  105. distribution of waiting time per active command.
  106.  
  107.                                                                   Page 3
  108.  
  109.  
  110. We conclude that the delay due to network communication is
  111. tolerable. It is of the same order of magnitude as that often
  112. experienced on moderately loaded time sharing systems. More
  113. explicit measurements of delays seen by user programs in general are
  114. in progress at BBN and elsewhere; it is beyond the scope of this RFC
  115. to discuss these delays in detail, or to break down their causes
  116. into process activation, queueing, IMP performance, etc. Instead,
  117. we merely note that cross-network debugging is possible in a
  118. practical sense.
  119.  
  120.                  PER MESSAGE                 PER ACTIVE COMMAND
  121. 0                .                            XXXXXXXXX
  122. 16               .                            .
  123. 32               XXXXXXXXXXXXXXXXXXXXXXXXXX   XXXXXXXXXXXXXXXXXXX
  124. 64               .                            XXX
  125. 128              .                            .
  126. 256              XX                           .
  127. 512              XXXX                         XX
  128. 1024             .                            XX
  129.  
  130. SIZE (BYTES), BBN (local data) = SRI (distant data) Left column
  131. gives lower bound (inclusive) on logarithmic scale. Thus, two
  132. messages had at least 256 bytes but less than 512 bytes. An
  133. examination of network traffic per active command shows that it is
  134. actually trimodal: some commands are answered from the cache,
  135. incurring no network traffic; some, such as start or stop, require
  136. only a few tens of bytes; and some commands, such as word search and
  137. load, cause transfer of thousands of bytes.
  138.  
  139.  
  140.  
  141.                  PER MESSAGE                  PER ACTIVE COMMAND
  142. 0                .                            XXXXXXXXX
  143. 1/16             X                            .
  144. 1/8              .                            .
  145. 1/4              X                            .
  146. 1/2              XXXXXXXXXX                   XXXXXXXX
  147. 1                XXXXXXXXXXXXXX               XXXXXXXXXXX
  148. 2                XXXX                         XXXX
  149. 4                X                            X
  150. 8                X                            XX
  151.  
  152. WAITING TIME (SEC), BBN (local data)
  153.  
  154.                                                                       Page 4
  155.  
  156.  
  157.  
  158.  
  159.                  PER MESSAGE                  PER ACTIVE COMMAND
  160. 0                .                            XXXXXXXXX
  161. 1/16             .                            .
  162. 1/8              .                            .
  163. 1/4              X                            .
  164. 1/2              XXXXXX                       XXX
  165. 1                XXXXXXXXXXXX                 XXXXXXXXX
  166. 2                XXXXXXXXXXXXX                XXXXXXXXXXXX
  167. 4                .                            XX
  168. 8                .                            .
  169.  
  170. WAITING TIME (SEC), SRI (distant data)
  171.